package com.kk.base.dao.admin;
/**
 * 后台角色数据库操作层
 */
import com.kk.base.entity.admin.UserRoleTypeEnum;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.query.Param;
import org.springframework.stereotype.Repository;

import com.kk.base.entity.admin.Role;

import java.util.List;

@Repository
public interface RoleDao extends JpaRepository<Role, Long> {
	@Query("select r from Role r where r.id = :id")
	Role find(@Param("id")Long id);

	/**
	 * 根据角色类型查询
	 */
	List<Role> findAllByRoleType(@Param("roleType") UserRoleTypeEnum roleType);

	/**
	 * 根据角色类型查询一条
	 */
	Role findTop1ByRoleType(UserRoleTypeEnum roleType);

	/**
	 * 查询角色不是管理员的一条角色类型
	 */
	Role findTop1ByRoleTypeAndRoleTypeNot(UserRoleTypeEnum roleType,UserRoleTypeEnum roleType1);
}
